<?php

namespace app\admin\model;

use think\Model;

class ComplaintModel extends Model
{
    protected $name = 'complaint';

    public function memberModel(){
        return $this->belongsTo('MemberModel', 'uid')->bind('memb_phone');
    }

    public function getTypeAttr($v){
        $type = [1=>'资费投诉', 2=>'快递公司投诉', 3=>'服务投诉', 4=>'建议'];
        return $type[$v];
    }
    /**
     * 根据搜索条件获取数据列表信息
     * @param array $where  查询条件
     * @param int $offset   偏移量
     * @param int $limit    查询数量
     */
    public function getDatasByWhere($where, $offset, $limit)
    {
        return $this->where($where)->limit($offset, $limit)->order('id desc')->select();
    }

    /**
     * 根据搜索条件获取所有的数据数量
     * @param array $where  查询条件
     */
    public function getAllDatas($where)
    {
        return $this->where($where)->count();
    }

    /**
     * 插入信息
     * @param array $param  信息数组
     */
    public function insertInfo($param)
    {
        try{
            // $valid = new \app\admin\validate\ShopValidate;
            // if(!$valid->check($param)){
            //     // 验证失败 输出错误信息
            //     return msg(-1,'', $valid->getError());
            // }else{
                $shoper = Shoper::create([
                    'name'  => $param['contact_phone'],
                    'password'  => $param['password'],
                ]);
                unset($param['password']);
                $param['shoper_id'] = $shoper->id;
                $this->save($param);
                return msg(1, url('shop/index'), '添加成功');
            // }
        }catch(\PDOException $e){

            return msg(-2, '', $e->getMessage());
        }
    }


    /**
     * 更新数据信息
     * @param array $param  更新的数组信息
     */
    public function editData($param)
    {
        try{
            $this->save($param, ['id' => $param['id']]);
            return msg(1, url('shop/index') ,'编辑成功');
        }catch(PDOException $e){
            return msg(-2, '', $e->getMessage());
        }
    }


    /**
     * 删除数据
     * @param int $id   删除的数据id
     */
    public function delData($id)
    {
        try{

            $this->where('id', $id)->delete();
            return msg(1, '', '删除成功');

        }catch( PDOException $e){
            return msg(-1,'', $e->getMessage());
        }
    }
}
